package com.example.controller;

import com.example.pojo.Result;
import com.example.pojo.stockTestPojo;
import com.example.service.stockTestService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;
import java.util.Map;
import java.util.Objects;

/**
 * ClassName:stockTest
 * Description:
 *是入厂检验指导书的内容
 * @Author 赵永峰
 * @Create 2025/1/21 16:15
 * @Version 1.0
 */
@RestController
public class stockTestController {
    @Autowired
    private stockTestService stockTestService;
    //插入一行外购件作业指导书的数据
    @PostMapping("/insertOneWorkData")
    public Result insertOneWorkData(@RequestBody stockTestPojo stockTestPojo){
        //插入一行部件作业指导书
        stockTestService.insertOneWorkData(stockTestPojo);
        return Result.success("保存成功");
    }
    //根据一个字段，查询等于这个值的唯一信息，查询的是字符串类型。
    @PostMapping("/inquiryOneFiled")
    public Result inquiryOneFiled(@RequestBody Map<String, Object>map){
        List<stockTestPojo> stockTestPojos=stockTestService.inquiryOneFiled(map);
        return Result.success(stockTestPojos);
    }
    //根据一个字段，查找这个字段等于某一个值的所有信息
    @PostMapping("/inquiryTwoFiledAll")
    public Result inquiryOneFiledAll(@RequestBody Map<String,Object> map){
        List<stockTestPojo> stockTestPojos=stockTestService.inquiryTwoFiledAll(map);
        return Result.success(stockTestPojos);
    }
    //修改一行所有的数据
    @PostMapping("/stockTestEditOneAll")
    public Result stockTestEditOneAll(@RequestBody stockTestPojo stockTestPojo){
        stockTestService.stockTestEditOneAll(stockTestPojo);
        return Result.success("修改成功");
    }
    //向上或者向下插入一行
    @PostMapping("/stockTestOrderNumberWork")
    public Result stockTestOrderNumberWork(@RequestBody List<stockTestPojo> stockTestPojos){
        for (int i = 0; i < stockTestPojos.size(); i++) {
//            是需要新插入一行
            if (stockTestPojos.get(i).getId()==-1){
                stockTestService.insertOneWorkData(stockTestPojos.get(i));
            }
            //是原有的，需要修改索引号
            else {
                stockTestService.editOneFiled(stockTestPojos.get(i).getId(),"orderNumber", stockTestPojos.get(i).getOrderNumber());
            }
        }
        return Result.success("插入成功");
    }
}
